hdf5.bindings
hdf5.wrap
hdf5.wraphl - D wrappers for 'high level' C API for HDF5
herr_t H5Pset_elink_cb(hid_t lapl_id, H5L_elink_traverse_t func, void *op_data); herr_t H5Pget_elink_cb(hid_t lapl_id, H5L_elink_traverse_t *func, void **op_data);
To Do: 1. Better exception handling that calls HDF5 to get error and returns appropriate Throwable object 2. Unit tests 3. Thoughtfulness about using D CFTE/reflection/templating to make it work better - also variants etc should be able to pass the data structure not cast(ubyte*) should automatically use reflection to deal with structs etc
Copyright by The HDF Group. * Copyright by the Board of Trustees of the University of Illinois. * All rights reserved. * * This file is part of HDF5. The full HDF5 copyright notice, including * terms governing use, modification, and redistribution, is contained in * the files COPYING and Copyright.html. COPYING can be found at the root * of the source code distribution tree; Copyright.html can be found at the * root level of an installed copy of the electronic HDF5 document set and * is linked from the top-level documents page. It can also be found at * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * access to either file, you may request a copy from help@hdfgroup.org. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Ported to D by Laeeth Isharc 2014 Borrowed heavily in terms of C API declarations from https://github.com/SFrijters/hdf5-d Stefan Frijters bindings for D
I do not think these are complete, and I also wanted to begin to work on a higher level D interface. Initially just using strings instead of chars, for example. And exceptions instead of checking status code each time. Later will add a higher level interface similarly to how it is done in h5py.
Consider this not even alpha stage. It probably isn't so far away from being useful though. This is written for Linux and will need modification to work on other platforms.